#pragma once

#include "IGameManager.h"
#include <OIS.h>

class IInputListener;

class IInputManager : public IGameManager{
public:
	virtual void AddListener(IInputListener* newListener)=0;
	virtual void RemoveListener(IInputListener* oldListener)=0;

	virtual bool IsKeyDown(const OIS::KeyCode &key)=0;
	virtual bool IsKeyUp(const OIS::KeyCode &key)=0;

	virtual bool IsMouseDown(const OIS::MouseButtonID &mouse)=0;
	virtual bool IsMouseUp(const OIS::MouseButtonID &mouse)=0;
	virtual const OIS::MouseState &GetMouseState()=0;
};